<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:p="http://primefaces.org/ui">



    <h:form id="IDFrmActualizacionDatosEmpresa" >

        <p:panelGrid columns="2" style="margin: 0 auto;">
            <p:outputLabel value="#{myBundle.CreateDepartamentoLabel_idPais}" for="idPais" />
            <h:panelGroup>

                <p:selectOneMenu id="idPais" value="#{actualizarInfEmpresaMB.paisSeleccionado}" required="false"
                                 requiredMessage="#{myBundle.CreateDepartamentoRequiredMessage_idPais}"
                                 converter="paisConverter">
                    <p:ajax event="change" async="true" process="@this" update="IDFrmActualizacionDatosEmpresa:idDepartamento :growl"/>
                    <f:selectItem itemLabel="#{myBundle.SelectOneMessage}" itemValue="#{null}"/>
                    <f:selectItems value="#{paisController.itemsAvailable}"
                                   var="idPaisItem"
                                   itemValue="#{idPaisItem}"
                                   itemLabel="#{idPaisItem.nombre.toString()}"/>

                </p:selectOneMenu>
                <p:tooltip for="idPais" value="#{departamentoController.getComponentMessages('idPais', myBundle.CreateDepartamentoHelpText_idPais)}"/>
            </h:panelGroup>


            <p:outputLabel value="#{myBundle.CreateMunicipioLabel_idDepartamento}" for="idDepartamento" />
            <h:panelGroup>
                <p:selectOneMenu id="idDepartamento" value="#{actualizarInfEmpresaMB.departamentoSeleccionado}" required="false"
                                 requiredMessage="#{myBundle.CreateMunicipioRequiredMessage_idDepartamento}"
                                 converter="departamentoConverter">
                    <p:ajax event="change"  async="true" process="@this" update="IDFrmActualizacionDatosEmpresa:idMunicipio :growl"/>
                    <f:selectItem itemLabel="#{myBundle.SelectOneMessage}" itemValue="#{null}"/>
                    <f:selectItems value="#{departamentoController.getDepartamentoPorPais(actualizarInfEmpresaMB.paisSeleccionado)}"
                                   var="idDepartamentoItem"
                                   itemValue="#{idDepartamentoItem}"
                                   itemLabel="#{idDepartamentoItem.nombre.toString()}"/>
                </p:selectOneMenu>
                <p:tooltip for="idDepartamento" value="#{municipioController.getComponentMessages('idDepartamento', myBundle.CreateMunicipioHelpText_idDepartamento)}"/>
            </h:panelGroup>


            <p:outputLabel value="#{myBundle.CreateDireccionLabel_idMunicipio}" for="idMunicipio" />
            <h:panelGroup>
                <p:selectOneMenu id="idMunicipio" value="#{actualizarInfEmpresaMB.municipioSeleccionado}"
                                 converter="municipioConverter">
                    <f:selectItem itemLabel="#{myBundle.SelectOneMessage}" itemValue="#{null}"/>
                    <f:selectItems value="#{municipioController.getlDepartamento(actualizarInfEmpresaMB.departamentoSeleccionado)}"
                                   var="idMunicipioItem"
                                   itemValue="#{idMunicipioItem}"
                                   itemLabel="#{idMunicipioItem.nombre.toString()}"/>

                </p:selectOneMenu>
                <p:tooltip for="idMunicipio" value="#{direccionController.getComponentMessages('idMunicipio', myBundle.CreateDireccionHelpText_idMunicipio)}"/>
            </h:panelGroup> 

            <p:outputLabel value="#{myBundle.CreateDireccionLabel_referencia}" for="referencia" />
            <h:panelGroup>
                <p:inputText id="referencia" value="#{actualizarInfEmpresaMB.direccion.referencia}"
                             title="#{myBundle.CreateDireccionTitle_referencia}" required="false"
                             requiredMessage="#{myBundle.CreateDireccionRequiredMessage_referencia}"
                             size="200" maxlength="200"  style="width: 200px"/>
                <p:tooltip for="referencia"
                           value="#{direccionController.getComponentMessages('referencia', myBundle.CreateDireccionHelpText_referencia)}"/>
            </h:panelGroup>

            <p:commandButton value="Seleccione Localización" type="button" icon="ui-icon-pin-s" onclick="PF('dlgMapa').show()"/>
            <br/>
            <p:outputLabel value="Latitud"/>
            <h:inputText id="latitud" value="#{actualizarInfEmpresaMB.direccion.latitud}" />  
            <p:outputLabel value="Longitud"/>
            <h:inputText id="longitud" value="#{actualizarInfEmpresaMB.direccion.longitud}" />

        </p:panelGrid>

        <center>
            <div style="height: 30px" />                                        
            <p:commandButton
                value="#{myBundle.Save}"
                action="#{actualizarInfEmpresaMB.guardarEmpresaDireccion()}"
                update=":acordionPanel:IDFrmActualizacionDatosEmpresa, :acordionPanel:IdTableDirecion1:IDtableDireccion"/>


            <p:commandButton value="Registrar nueva dirección" actionListener="#{actualizarInfEmpresaMB.crearNuevaInstanciaDireccion()}" 
                             update=":acordionPanel:IDFrmActualizacionDatosEmpresa, :acordionPanel:IdTableDirecion1:IDtableDireccion"/>
        </center>

    </h:form>

    <h:form id="IdTableDirecion1">
        <p:dataTable id="IDtableDireccion" 
                     style="margin-top: 15pt;"
                     value="#{actualizarInfEmpresaMB.direcciones}" 
                     var="direccion">
            <p:column headerText="#{myBundle.ListDireccionTitle_referencia}">
                <p:outputLabel value="#{direccion.referencia}"/>
            </p:column>
            <p:column headerText="#{myBundle.ListDepartamentoTitle_idDepartamento}">
                <p:outputLabel value="#{direccion.idMunicipio.idDepartamento.nombre}"/>
            </p:column>
            <p:column headerText="#{myBundle.ListMunicipioTitle_idMunicipio}">
                <p:outputLabel value="#{direccion.idMunicipio.nombre}"/>
            </p:column>
            <p:column headerText="Opciones" style="width:8%">
                <div style="float: left;">
                    <p:commandLink styleClass="ui-icon ui-icon-pencil" 
                                   actionListener="#{actualizarInfEmpresaMB.actualizarEmpresaDireccion(direccion)}"
                                   title="Editar Contacto Entidad" 
                                   update=":acordionPanel:IDFrmActualizacionDatosEmpresa"/>
                </div>
                <div style="float: left;">
                    <p:commandLink
                        styleClass="ui-icon ui-icon-trash"
                        actionListener="#{actualizarInfEmpresaMB.eliminarEmpresaDireccion(direccion)}"
                        update=":acordionPanel:IDFrmActualizacionDatosEmpresa,IDtableDireccion"/>
                </div>
            </p:column> 
        </p:dataTable>
    </h:form>


    <p:dialog widgetVar="dlgMapa" width="625" height="400" >  
        <p:gmap id="gmap" center="13.6013, -88.8529" zoom="3" type="HYBRID" onPointClick="handlePointClick(event); dlgMapa.hide();"
                style="width:600px;height:400px" />  
    </p:dialog>  


    <script type="text/javascript">

        function handlePointClick(event) {
            var currentMarker = null;
            document.getElementById('acordionPanel:IDFrmActualizacionDatosEmpresa:latitud').value = event.latLng.lat();
            document.getElementById('acordionPanel:IDFrmActualizacionDatosEmpresa:longitud').value = event.latLng.lng();
            currentMarker = new google.maps.Marker({
                position: new google.maps.LatLng(event.latLng.lat(), event.latLng.lng())
            });

            alert('Latitud y longitud actualizadas');
        }
    </script>


</ui:composition>
